<?php

class Telefono
{
	protected $Numero;
	protected $Ocupado;

	function __construct($numero)
	{
		$this->Numero=$numero;
		$this->Ocupado="NO";
	}

	function LlamarNumero($numero)
	{
		$msg="<br> Error indefinido.";
		if ($this->Prendido=="SI")
		{
			if ($this->Ocupado=="NO")
			{
				$this->Ocupado="SI";
				$msg="<br> Llamando al numero: ".$numero;
			}
			else
			{
				$msg="<br> No se puede realizar la llamada porque el telefono esta ocupado.";
			}
		}
		else
		{
			echo "<br> No se puede realizar la llamada porque el telefono esta apagado.";
		}
		return $msg;
		
	}
	function Colgar()
	{
		$this->Ocupado="NO";
		$msg="Llamada finalizada.";
		return $msg;
	}
	function getNumero()
	{
		return "Numero: ".$this->Numero;
	}
}

class Celular extends Telefono
{
	protected $Prendido;
	protected $Contactos;

	function __construct($numero)
	{
		parent:: __construct($numero);
		$this->Prendido="SI";
		$this->Contactos=array();
	}

	function agregarContacto($nombreContacto, $numeroContacto)
	{
		$nombre=$nombreContacto;
		$numero=$numeroContacto;

		$this->Contactos[$nombre]=$numero;
	}
	function getNumeroContacto($nombreContacto)
	{
		return "Numero del contacto buscado:".$this->Contactos[$nombreContacto];
	}
	function getContactos()
	{
		return $this->Contactos;
	}
}

//if (isset($_POST["enviar"]) && $_POST["nombre"] != "") 
//{
	$numero=$_POST["numero"];
	$ocupado=$_POST["ocupado"];
	$prendido=$_POST["prendido"];

	$clase=new Celular($numero);

	echo $clase->LlamarNumero($numero);
	echo "<br>";
	echo $clase->Colgar();
	echo "<br>";
	echo $clase->getNumero();
	echo "<br>";
	
    for ($k=0; $k<count($_POST["nombres"]); $k++)
    {
    	$clase->agregarContacto($_POST["nombres"][$k], $_POST["numeros"][$k]);
    }

	//echo $clase->agregarContacto($_POST["nombres"][0], $_POST["numeros"][0]);
	echo "<br>";
	//print_r($clase->getContactos());
	echo $clase->getNumeroContacto($_POST["nombres"][1]);
//}
?>